參考來源:https://www.guru99.com/managing-processes-in-linux.html
什麼是流程?
程序的實例稱為Process。簡單來說,Linux機器提供的任何命令都會啟動一個新進程。
可以為同一程序提供多個進程。
流程類型:
前台進程:它們在屏幕上運行,需要用戶輸入。例如Office程序
後台進程:它們在後台運行,通常不需要用戶輸入。例如防病毒軟件。
運行前台進程
要啟動前台進程,您可以從儀表板運行它,也可以從終端運行它。
使用終端時,您必須等待,直到前台進程運行。
運行後台進程
如果從終端啟動前台程序/進程,則無法在終端上工作,直到程序啟動並運行。
特別是,數據密集型任務需要大量處理能力,甚至可能需要數小時才能完成。您不希望您的終端被擱置這麼長時間。
為了避免這種情況,您可以運行程序並將其發送到後台,以便終端可供您使用。讓我們學習如何做到這一點
FG
您可以使用命令“fg”繼續已停止的程序並將其置於前台。
該實用程序的簡單語法是:
fg jobname
例
推出'banshee'音樂播放器
使用'ctrl + z'命令停止它
使用'fg'實用程序繼續它。
管理流程的其他重要命令:
Top
該實用程序告訴用戶Linux機器上的所有正在運行的進程。
按鍵盤上的“q”移出過程顯示。
術語如下:
領域 描述 例1 例2
PID 每個任務的進程ID 1525 961
User 任務所有者的用戶名 家 根
PR 優先級 可以是20(最高)或-20(最低) 20 20
NI 任務價值 0 0
VIRT 使用的虛擬內存(kb) 1775 75972
RES 使用的物理內存(kb) 100 51
SHR 共享內存使用(kb) 28 7952
%CPU CPU時間的百分比 1.7 1.0
%MEM 使用的物理內存 10 5.1
TIME+ 總CPU時間 5:05.34 2:23.42
Command 命令名稱 Photoshop.exe Xorg
ps
此命令代表“進程狀態”。當我們使用Cntrl + Alt + Del時,它類似於Windows機器中彈出的“任務管理器”。此命令類似於“top”命令,但顯示的信息不同。
要檢查在用戶下運行的所有進程,請使用命令:
ps ux
您還可以檢查單個進程的進程狀態,語法:
ps PID
Kill
此命令終止 Linux計算機上的正在運行的進程。
要使用這些實用程序,您需要知道要kill的進程的PID(進程ID)
句法:
kill PID
查找流程的PID:
pidof Process name
NICE
Linux可以同時運行大量進程,這可能會降低某些高優先級進程的速度並導致性能低下。
為避免這種情況,可以告訴機器根據要求確定流程的優先級。
此優先級在Linux中稱為Niceness,其值介於-20到19. Niceness索引越低,該任務的優先級越高。
所有進程的默認值為0。
要使用除默認值以外的niceness值啟動進程,請使用以下語法:
nice -n 'Nice value' process name
如果系統上已經存在某個進程,那麼可以使用語法“Renice”其值。
renice'good value'-p'PID'
要更改Niceness,可以使用'top'命令確定PID(進程ID)及其Nice值。稍後使用renice命令更改值。
例:
DF
此程序報告所有文件系統上的可用磁盤空間(硬盤)。
如果想以可讀格式顯示上述信息,請使用命令:
'df -h'
之後學VI編輯。